草庐IT

c++ - std::make_pair 与 c++ 11

全部标签

c - 为什么内存对齐会在结构内发生变化?

在previousquestion中,我learned当一个具有8字节对齐的结构嵌入另一个具有4字节对齐的结构时,需要在8字节对齐的结构之前进行填充。明白了。至少我认为我理解了。VS2012docs说:Forstructures,unions,andarrays,thealignment-requirementisthelargestalignment-requirementofitsmembers.所以,如果我有这样的结构:typedefstructs_inner{unsignedlongul1;doubledbl1;fourth_structs4;unsignedlongul2;i

c++ - 如何获取 %AppData% 路径作为 std::string?

我读到可以使用SHGetSpecialFolderPath();获取AppData路径。但是,它返回一个TCHAR数组。我需要一个std::string。如何将它转换为std::string?更新我读到可以使用getenv("APPDATA"),但它在WindowsXP中不可用。我想支持WindowsXP-Windows10。 最佳答案 Ttype表示SHGetSpecialFolderPath是一对函数:SHGetSpecialFolderPathA适用于WindowsANSI编码char基于文本,以及SHGetSpecialFo

c - openmp的性能

我正在测试openmp的性能,但我发现了一些奇怪的结果,这是我的测试代码:voidtest(){inta=0;clock_tt1=clock();intlength=50000;double*t3=newdouble[length]();double*t4=newdouble[length]();for(inti=0;i当我分别设置length=50000或length=100000或length=150000时,结果如图所示:奇怪的是耗时不是直线上升(length=150000时的耗时几乎是length=50000时的5倍),而计算是一条直线。同样奇怪的是,当length=15000

c - 将 SQL_BINARY 数组数据作为参数传递时如何避免零终止? (ODBC 驱动程序)

我刚刚了解到WindowsODBC驱动程序API需要一组SQL_BINARY数据作为输入参数,以零字节结束。尽管我没有在文档中找到这样的语句,但我通过使用以下代码执行存储过程发现了这一点:最小示例//ParameterbindingBYTEdata[10]={15,3,54,144,34,211,200,147,15,74};SQLBindParameter(hstmt,1,SQL_PARAM_INPUT,SQL_C_BINARY,SQL_BINARY,10,0,data,0,NULL);//ProcedureexecutionSQLRETURNres=SQLExecDirect(hs

c - COMSPEC 和 PATH 环境变量应该是什么来定位命令解释器,使用 system()?

操作系统(XP)环境变量是否与从visualstudio.NETC++运行的进程中使用的相同?似乎没有找到命令解释器:当使用NULL作为命令时,system()returns0并使用命令-ENOENTCommandinterpretercannotbefound。在windows中(系统->环境变量),COMSPEC包含cmd.exe的路径路径没有。PATH应该是什么?除此之外,不知道为什么找不到解释器。如有任何建议,我们将不胜感激。谢谢。if(system("tail-500log.txt")==-1){//Errorcallingtail.exeonlog//errnoisasys

windows - configure, make, git on windows = how to compile install on windows

我想工作ffmpeg-ruby在Windows上。如果可能的话。但是我不知道怎么办配置制作./configure--prefix=/opt/ffmpeg--enable-pthreads--enable-shared--enable-gpl制作sudomakeinstallWindows上的git?gitclonegit://github.com/gwik/ffmpeg-ruby.gitcdffmpeg-rubygem构建./ffmpeg-ruby.gemspecsudogeminstall./ffmpeg-ruby-0.1.0.gem----with-ffmpeg-dir=/opt/

c - 在 Windows 上查找 C 代码中的内存泄漏

我已经知道我可以在Linux上使用mtrace和valgrind跟踪我的代码中的内存泄漏,这两者在Windows上都不可用。您会推荐哪个Windows程序来跟踪内存泄漏?我是Eclipse用户,现在我已经使用C语言一两个月了,所以我更喜欢用户友好的解决方案,而不是更高级的解决方案。 最佳答案 ApplicationVerifier会做得很好,http://msdn.microsoft.com/en-us/library/ms220948.aspx 关于c-在Windows上查找C代码中的

c - 尝试用 cl.exe 编译

抱歉,如果这是一个简单的问题,我不会在Windows中进行太多编程。我安装了VisualStudio,但当我尝试从命令行执行“cl”时,它告诉我它未被识别为命令!我如何获得cl? 最佳答案 打开VisualStudio命令提示窗口,它会自动为您设置正确的路径和其他设置。如果您做不到,这里有手动操作的说明:http://msdn.microsoft.com/en-us/library/f2ccy3wt(VS.80).aspx 关于c-尝试用cl.exe编译,我们在StackOverflow

c - 在windows中查找文件的权限

我在Linux工作。在Linux中通过stat函数,我们可以提取一个文件的权限。同样,我们如何在windows中提取文件的权限。msdn中的_stat函数声明权限位在stat缓冲区中设置。但它没有给出如何提取它们。http://msdn.microsoft.com/en-us/library/14h5k7ff%28VS.71%29.aspx 最佳答案 structstat结构不包含Windows上的任何文件权限信息。Windows安全性要复杂得多,您需要GetFileSecurity()来检索文件的DACL。在Windows程序中很

c++ - 在没有注册表的情况下存储应用程序数据/设置的方法?

我需要一些从文件存储和获取数据的方法(在WIN32apic++应用程序中,而不是MFC或.NET)例如关闭窗口时保存窗口的x、y、宽度和高度,并在打开窗口时加载数据。我试过.ini文件,带有函数——WritePrivateProfileString和ReadPrivateProfileString/Int,但是在MSDN上它说“提供此功能只是为了与基于Windows的16位应用程序兼容。应用程序应将初始化信息存储在注册表中。”当我尝试在我的Windows764位机器上读取ini文件时,我遇到了蓝屏!(在visualstudio的Debug模式下)O.O我注意到大多数其他应用程序使用XM